muninlite: correctly parse ifname with - char
authorFabio Capriati <[email protected]>
Mon, 29 Dec 2014 09:11:44 +0000 (10:11 +0100)
committerJonathan McCrohan <[email protected]>
Sat, 7 Feb 2015 20:56:27 +0000 (20:56 +0000)
Jonathan McCrohan: Squashed Fabio Capriati and Jo-Philipp Wich's patches.

Closes #701

Signed-off-by: Fabio Capriati <[email protected]>
Signed-off-by: Jonathan McCrohan <[email protected]>
admin/muninlite/patches/220-modify-ifname-parser.patch [new file with mode: 0644]

diff --git a/admin/muninlite/patches/220-modify-ifname-parser.patch b/admin/muninlite/patches/220-modify-ifname-parser.patch
new file mode 100644 (file)
index 0000000..17345ee
--- /dev/null
@@ -0,0 +1,20 @@
+--- a/munin-node.in
++++ b/munin-node.in
+@@ -141,7 +141,7 @@
+   fi
+ }
+ fetch_if() {
+-  IINFO=$(grep "$1:" /proc/net/dev | cut -d: -f2 | sed -e 's/  / /g')
++  IINFO=$(sed -ne "/^ *${1//_/-}: / { s/^.\+: \+//; s/[[:space:]]\+/ /gp }" /proc/net/dev)
+   echo "down.value" $(echo $IINFO | cut -d\  -f1)
+   echo "up.value" $(echo $IINFO | cut -d\  -f9)
+ }
+@@ -162,7 +162,7 @@
+   echo "trans.warning 1"
+ }
+ fetch_if_err() {
+-  IINFO=$(grep "$1:" /proc/net/dev | cut -d: -f2 | sed -e 's/  / /g')
++  IINFO=$(sed -ne "/^ *${1//_/-}: / { s/^.\+: \+//; s/[[:space:]]\+/ /gp }" /proc/net/dev)
+   echo "rcvd.value" $(echo $IINFO | cut -d\  -f3)
+   echo "trans.value" $(echo $IINFO | cut -d\  -f11)
+ }